package com.mtt.thirdapi.oujian.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import lombok.Setter;

/**
 * @Description: 在线下单Vo
 * @Author: guomengzhou
 * @CreateDate: 2019/8/13$ 14:00$
 * @UpdateUser: guomengzhou
 * @UpdateDate: 2019/8/13$ 14:00$
 * @Version: 1.0
 */
@Getter
@Setter
@Builder
@AllArgsConstructor
public class OjApiOrdersVo {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(
            value = "表示产品的名称",
            required = true
    )
    private String productName;
    @ApiModelProperty(
            value = "表示目的地的国家二字简码",
            required = true
    )
    private String destinationNo;
    @ApiModelProperty(
            value = "表示Weaship的内单号"
    )
    private String insideNumber;
    @ApiModelProperty(
            value = "当物流线路是自有VAT类型时的VAT单号"
    )
    private String vatNo;
    @ApiModelProperty(
            value = "当物流线路是自有VAT类型时的eoriNo单号"
    )
    private String eoriNo;
    @ApiModelProperty(
            value = "（派送贴单号 非必填）国外的派送单号"
    )
    private String deliveryNumber;

    @ApiModelProperty(
            value = "表示取件方式简单的将就是您已哪种方式将货物送往Weaship仓库。可用值：\n" +
                    "                EXPRESS(\"国内邮寄\"), SELF(\"自己送货\"), ESHIP(\"上门取货\");",
            required = true
    )
    private String takeAwayType;
    @ApiModelProperty(
            value = "(国内快递单号)当取件方式为国内邮寄时，必填"
    )
    private String domesticExpressNo;
    @ApiModelProperty(
            value = "参考号，如果你们当前存在系统，那么通常表示你们系统的业务号",
            required = true
    )
    private String referenceNo;
    @ApiModelProperty(
            value = "表示订单类型，可用值：\n" +
                    "            SINGLE(\"单件\"),BATCH(\"批量\"),API(\"API\"),BIAOJU(\"镖局\"),\n" +
                    "            TONGTU(\"通途\"),EMMIS(\"钮门\"),DIANXIAOMI(\"店小秘\"),\n" +
                    "            PUYUAN(\"普源\"),MANGGUO(\"芒果\")",
            required = true
    )
    private String orderFromType;
    @ApiModelProperty(
            value = "货物件",
            required = true
    )
    private OjGoodsVo[] goods;
    @ApiModelProperty(
            value = "发货人",
            required = true
    )
    private OjSenderAdressVo senderAddress;
    @ApiModelProperty(
            value = "收货人",
            required = true
    )
    private OjDeliveryAdressVo deliveryAddress;

}
